package com.sky.skyopsserver.vos;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 主机组详情响应VO（包含主机列表）
 * 
 * @author Administrator
 * @since 2025-01-17
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class HostGroupDetailRspVO {
    
    /**
     * 主键唯一ID
     */
    private Long id;
    
    /**
     * 分组名称
     */
    private String name;
    
    /**
     * 备注
     */
    private String remark;
    
    /**
     * 创建时间
     */
    private LocalDateTime createTime;
    
    /**
     * 主机数量
     */
    private Long hostCount;
    
    /**
     * 主机列表（简化信息）
     */
    private List<HostSimpleInfo> hosts;
    
    /**
     * 主机简化信息
     */
    @Data
    @AllArgsConstructor
    @NoArgsConstructor
    @Builder
    public static class HostSimpleInfo {
        /**
         * 主机ID
         */
        private Long id;
        
        /**
         * 主机名称
         */
        private String name;
        
        /**
         * 公网IP
         */
        private String publicHost;
        
        /**
         * 私有IP
         */
        private String privateHost;
        
        /**
         * 主机类型
         */
        private String type;
        
        /**
         * 系统版本
         */
        private String osVersion;
    }
}